[INFO] fetching crate llm-cost-dashboard 1.0.2...
[INFO] testing llm-cost-dashboard-1.0.2 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate llm-cost-dashboard 1.0.2 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate llm-cost-dashboard 1.0.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate llm-cost-dashboard 1.0.2
[INFO] tweaked toml for crates.io crate llm-cost-dashboard 1.0.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate llm-cost-dashboard 1.0.2 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate llm-cost-dashboard 1.0.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 57efcf34baac8e5afd61ab078db563ddbba9d664fac7d768ad1b4c5d5a5ccf12
[INFO] running `Command { std: "docker" "start" "-a" "57efcf34baac8e5afd61ab078db563ddbba9d664fac7d768ad1b4c5d5a5ccf12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "57efcf34baac8e5afd61ab078db563ddbba9d664fac7d768ad1b4c5d5a5ccf12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57efcf34baac8e5afd61ab078db563ddbba9d664fac7d768ad1b4c5d5a5ccf12", kill_on_drop: false }`
[INFO] [stdout] 57efcf34baac8e5afd61ab078db563ddbba9d664fac7d768ad1b4c5d5a5ccf12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 296e5448c653c965007b13e9a9c881419f7ae71db53cf59a632315b600821600
[INFO] running `Command { std: "docker" "start" "-a" "296e5448c653c965007b13e9a9c881419f7ae71db53cf59a632315b600821600", kill_on_drop: false }`
[INFO] [stderr]    Compiling signal-hook v0.3.18
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling instability v0.3.12
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling unicode-width v0.2.0
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling clap_builder v4.5.61
[INFO] [stderr]    Compiling signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling crossterm v0.28.1
[INFO] [stderr]    Compiling unicode-truncate v1.1.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling clap_derive v4.5.61
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling strum v0.26.3
[INFO] [stderr]    Compiling ratatui v0.29.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling clap v4.5.61
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling llm-cost-dashboard v1.0.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.62s
[INFO] running `Command { std: "docker" "inspect" "296e5448c653c965007b13e9a9c881419f7ae71db53cf59a632315b600821600", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "296e5448c653c965007b13e9a9c881419f7ae71db53cf59a632315b600821600", kill_on_drop: false }`
[INFO] [stdout] 296e5448c653c965007b13e9a9c881419f7ae71db53cf59a632315b600821600
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fb9bb840a06184afe28ed6d6ff5174120f9f032a8b3038d4dd86047b72dbd38e
[INFO] running `Command { std: "docker" "start" "-a" "fb9bb840a06184afe28ed6d6ff5174120f9f032a8b3038d4dd86047b72dbd38e", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling zerocopy-derive v0.8.42
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling llm-cost-dashboard v1.0.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling proptest v1.10.0
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 28.25s
[INFO] running `Command { std: "docker" "inspect" "fb9bb840a06184afe28ed6d6ff5174120f9f032a8b3038d4dd86047b72dbd38e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb9bb840a06184afe28ed6d6ff5174120f9f032a8b3038d4dd86047b72dbd38e", kill_on_drop: false }`
[INFO] [stdout] fb9bb840a06184afe28ed6d6ff5174120f9f032a8b3038d4dd86047b72dbd38e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] aec11cecfa4c8982600cb38c105cbc98b12a991c1ffa965cb8e70b6863a57da9
[INFO] running `Command { std: "docker" "start" "-a" "aec11cecfa4c8982600cb38c105cbc98b12a991c1ffa965cb8e70b6863a57da9", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.23s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/llm_cost_dashboard-fa8226de839f47f6)
[INFO] [stdout] 
[INFO] [stdout] running 106 tests
[INFO] [stdout] test budget::tests::test_alert_not_triggered_below_threshold ... ok
[INFO] [stdout] test budget::tests::test_alert_threshold_clamped_above_one ... ok
[INFO] [stdout] test budget::tests::test_alert_not_triggered_just_below ... ok
[INFO] [stdout] test budget::tests::test_alert_threshold_clamped_below_zero ... ok
[INFO] [stdout] test budget::tests::test_alert_triggered_above_threshold ... ok
[INFO] [stdout] test budget::tests::test_alert_triggered_at_threshold ... ok
[INFO] [stdout] test budget::tests::test_gauge_pct_at_50_percent ... ok
[INFO] [stdout] test budget::tests::test_initial_remaining_equals_limit ... ok
[INFO] [stdout] test budget::tests::test_negative_spend_returns_error ... ok
[INFO] [stdout] test budget::tests::test_over_budget_error_variant ... ok
[INFO] [stdout] test budget::tests::test_over_budget_flag ... ok
[INFO] [stdout] test budget::tests::test_over_budget_returns_error ... ok
[INFO] [stdout] test budget::tests::test_pct_consumed_zero_limit_returns_one ... ok
[INFO] [stdout] test budget::tests::test_status_over_budget ... ok
[INFO] [stdout] test budget::tests::test_gauge_pct_clamped_to_100 ... ok
[INFO] [stdout] test cost::pricing::tests::test_compute_cost_fractional_result ... ok
[INFO] [stdout] test cost::pricing::tests::test_compute_cost_one_million_input ... ok
[INFO] [stdout] test budget::tests::test_spend_decreases_remaining ... ok
[INFO] [stdout] test budget::tests::test_projected_monthly_math ... ok
[INFO] [stdout] test cost::pricing::tests::test_claude_haiku_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_all_models_have_positive_rates ... ok
[INFO] [stdout] test budget::tests::test_status_warning ... ok
[INFO] [stdout] test budget::tests::test_projected_monthly_zero_hours_returns_zero ... ok
[INFO] [stdout] test cost::pricing::tests::test_all_pricing_table_entries_lookable ... ok
[INFO] [stdout] test cost::pricing::tests::test_claude_opus_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_compute_cost_one_million_output ... ok
[INFO] [stdout] test cost::pricing::tests::test_compute_cost_zero_tokens ... ok
[INFO] [stdout] test cost::pricing::tests::test_gemini_15_flash_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_gemini_15_pro_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_gemini_20_flash_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_gpt4_turbo_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_gpt4o_mini_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_compute_cost_max_u64_does_not_panic ... ok
[INFO] [stdout] test budget::tests::test_status_ok ... ok
[INFO] [stdout] test budget::tests::test_reset_clears_spent ... ok
[INFO] [stdout] test cost::pricing::tests::prop_lookup_deterministic ... ok
[INFO] [stdout] test cost::pricing::tests::test_lookup_case_insensitive ... ok
[INFO] [stdout] test cost::pricing::tests::test_lookup_known_model ... ok
[INFO] [stdout] test cost::pricing::tests::test_lookup_unknown_uses_fallback ... ok
[INFO] [stdout] test cost::pricing::tests::test_o1_pricing ... ok
[INFO] [stdout] test cost::pricing::tests::test_o3_mini_pricing ... ok
[INFO] [stdout] test cost::tests::test_add_record_increases_len ... ok
[INFO] [stdout] test cost::tests::test_by_model_avg_cost ... ok
[INFO] [stdout] test cost::tests::test_by_model_groups_correctly ... ok
[INFO] [stdout] test cost::tests::test_fractional_cost_stored_correctly ... ok
[INFO] [stdout] test cost::tests::test_by_model_token_sums ... ok
[INFO] [stdout] test cost::tests::test_clear_empties_ledger ... ok
[INFO] [stdout] test cost::tests::test_is_empty_on_new_ledger ... ok
[INFO] [stdout] test cost::pricing::tests::test_gpt4o_pricing ... ok
[INFO] [stdout] test cost::tests::test_last_n_more_than_len_returns_all ... ok
[INFO] [stdout] test cost::tests::test_negative_cost_rejected ... ok
[INFO] [stdout] test cost::tests::test_last_n_returns_at_most_n ... ok
[INFO] [stdout] test cost::tests::test_p99_latency_correct ... ok
[INFO] [stdout] test cost::tests::test_zero_tokens_cost_is_zero ... ok
[INFO] [stdout] test error::tests::test_budget_alert_display ... ok
[INFO] [stdout] test cost::tests::test_known_model_cost_formula ... ok
[INFO] [stdout] test cost::tests::test_p99_single_record ... ok
[INFO] [stdout] test cost::tests::test_projected_monthly_zero_window ... ok
[INFO] [stdout] test cost::tests::test_projected_monthly_empty_ledger ... ok
[INFO] [stdout] test error::tests::test_budget_exceeded_display ... ok
[INFO] [stdout] test cost::tests::test_projected_monthly_math ... ok
[INFO] [stdout] test cost::tests::test_total_usd_sums_records ... ok
[INFO] [stdout] test cost::tests::test_since_filters_by_timestamp ... ok
[INFO] [stdout] test cost::tests::test_total_usd_empty_is_zero ... ok
[INFO] [stdout] test error::tests::test_invalid_pricing_display ... ok
[INFO] [stdout] test cost::tests::test_sparkline_data_len ... ok
[INFO] [stdout] test error::tests::test_serialization_error_from ... ok
[INFO] [stdout] test error::tests::test_log_parse_helper ... ok
[INFO] [stdout] test error::tests::test_unknown_model_display ... ok
[INFO] [stdout] test log::tests::test_filter_by_model_case_insensitive ... ok
[INFO] [stdout] test log::tests::test_filter_no_match_returns_empty ... ok
[INFO] [stdout] test log::tests::test_all_returns_in_order ... ok
[INFO] [stdout] test log::tests::test_ingest_error_is_log_parse_error_variant ... ok
[INFO] [stdout] test log::tests::test_ingest_missing_provider_defaults_to_unknown ... ok
[INFO] [stdout] test log::tests::test_ingest_unknown_model_accepted_gracefully ... ok
[INFO] [stdout] test log::tests::test_ingest_valid_json_line ... ok
[INFO] [stdout] test cost::pricing::tests::prop_cost_non_negative ... ok
[INFO] [stdout] test error::tests::test_io_error_from ... ok
[INFO] [stdout] test log::tests::test_append_increases_len ... ok
[INFO] [stdout] test error::tests::test_ledger_error_display ... ok
[INFO] [stdout] test log::tests::test_clear_empties_log ... ok
[INFO] [stdout] test error::tests::test_log_parse_error_display ... ok
[INFO] [stdout] test log::tests::test_ingest_empty_string_returns_error ... ok
[INFO] [stdout] test log::tests::test_ingest_missing_required_field_returns_error ... ok
[INFO] [stdout] test log::tests::test_ingest_invalid_json_returns_error ... ok
[INFO] [stdout] test log::tests::test_filter_by_model_returns_matching ... ok
[INFO] [stdout] test log::tests::test_ingest_whitespace_only_returns_error ... ok
[INFO] [stdout] test log::tests::test_ingest_with_error_field_marks_success_false ... ok
[INFO] [stdout] test trace::tests::test_span_records_latency ... ok
[INFO] [stdout] test log::tests::test_is_empty_on_new_log ... ok
[INFO] [stdout] test trace::tests::test_span_unknown_model_uses_fallback ... ok
[INFO] [stdout] test trace::tests::test_span_with_tag ... ok
[INFO] [stdout] test log::tests::test_to_json_roundtrip ... ok
[INFO] [stdout] test log::tests::test_multiple_ingests_accumulate ... ok
[INFO] [stdout] test trace::tests::test_span_cost_computed_from_tokens ... ok
[INFO] [stdout] test trace::tests::test_span_failed_marks_success_false ... ok
[INFO] [stdout] test trace::tests::test_span_to_json_roundtrip ... ok
[INFO] [stdout] test log::tests::test_ingest_with_optional_provider_field ... ok
[INFO] [stdout] test error::tests::test_terminal_error_display ... ok
[INFO] [stdout] test trace::tests::test_store_failure_count ... ok
[INFO] [stdout] test trace::tests::test_store_is_empty_on_new ... ok
[INFO] [stdout] test trace::tests::test_store_total_cost ... ok
[INFO] [stdout] test trace::tests::test_span_zero_tokens_zero_cost ... ok
[INFO] [stdout] test trace::tests::test_store_record_and_retrieve ... ok
[INFO] [stdout] test cost::pricing::tests::prop_cost_linear_with_input ... ok
[INFO] [stdout] test cost::pricing::tests::prop_cost_linear_with_output ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 106 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/llm_dash-20e03c3bbf0671be)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/fuzz_pricing.rs (/opt/rustwide/target/debug/deps/fuzz_pricing-46fe1bf2991ded03)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test combined_cost_equals_sum_of_parts ... ok
[INFO] [stdout] test combined_cost_ge_input_only_cost ... ok
[INFO] [stdout] test higher_output_rate_model_costs_more ... ok
[INFO] [stdout] test high_input_ratio_vs_high_output_ratio ... ok
[INFO] [stdout] test lookup_case_insensitive_for_all_entries ... ok
[INFO] [stdout] test lookup_is_deterministic ... ok
[INFO] [stdout] test max_u64_both_tokens_no_panic_no_nan ... ok
[INFO] [stdout] test max_u64_input_tokens_no_panic_no_nan ... ok
[INFO] [stdout] test max_u64_output_tokens_no_panic_no_nan ... ok
[INFO] [stdout] test combined_cost_ge_output_only_cost ... ok
[INFO] [stdout] test unknown_model_zero_tokens_is_zero ... ok
[INFO] [stdout] test zero_tokens_always_zero_cost ... ok
[INFO] [stdout] test single_token_cost_is_fractional ... ok
[INFO] [stdout] test unknown_model_lookup_returns_fallback ... ok
[INFO] [stdout] test unknown_model_max_u64_no_panic_no_nan ... ok
[INFO] [stdout] test prop_cost_additive_input ... ok
[INFO] [stdout] test prop_zero_tokens_zero_cost ... ok
[INFO] [stdout] test prop_cost_additive_output ... ok
[INFO] [stdout] test prop_cost_non_negative_all_models ... ok
[INFO] [stdout] test prop_unknown_model_never_nan ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-e16f03c279e0bf19)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test all_pricing_entries_produce_finite_costs ... ok
[INFO] [stdout] test app_multiple_malformed_lines_do_not_corrupt_state ... ok
[INFO] [stdout] test app_demo_data_produces_nonzero_total ... ok
[INFO] [stdout] test app_ingest_and_reset ... ok
[INFO] [stdout] test app_projected_monthly_nonzero_after_ingest ... ok
[INFO] [stdout] test budget_exceeded_after_large_spend ... ok
[INFO] [stdout] test ingest_multiple_valid_lines ... ok
[INFO] [stdout] test fallback_pricing_is_nonzero ... ok
[INFO] [stdout] test ledger_and_budget_stay_consistent ... ok
[INFO] [stdout] test malformed_line_skipped_gracefully ... ok
[INFO] [stdout] test missing_required_field_returns_error ... ok
[INFO] [stdout] test span_store_total_matches_individual_costs ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-4ea3961118a498a6)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test test_cost_accuracy_combined_tokens ... ok
[INFO] [stdout] test test_cost_accuracy_gemini_flash_input ... ok
[INFO] [stdout] test test_cost_accuracy_gpt4_turbo_combined ... ok
[INFO] [stdout] test test_cost_accuracy_claude_opus_output ... ok
[INFO] [stdout] test test_cost_accuracy_o1_preview_output ... ok
[INFO] [stdout] test test_cost_accuracy_claude_opus_input ... ok
[INFO] [stdout] test test_ingest_empty_json_object_returns_error ... ok
[INFO] [stdout] test test_demo_mode_does_not_panic_with_low_budget ... ok
[INFO] [stdout] test test_demo_mode_produces_output ... ok
[INFO] [stdout] test test_ingest_malformed_line_does_not_corrupt_state ... ok
[INFO] [stdout] test test_ingest_line_integration ... ok
[INFO] [stdout] test test_ingest_invalid_token_type_returns_parse_error ... ok
[INFO] [stdout] test test_ingest_mixed_valid_invalid_lines ... ok
[INFO] [stdout] test test_ingest_unknown_model_falls_back_to_pricing ... ok
[INFO] [stdout] test test_ingest_negative_token_value_returns_parse_error ... ok
[INFO] [stdout] test test_pricing_covers_all_major_models ... ok
[INFO] [stdout] test test_reset_after_demo_data ... ok
[INFO] [stdout] test test_tui_by_model_single_model_no_panic ... ok
[INFO] [stdout] test test_ingest_missing_output_tokens_returns_parse_error ... ok
[INFO] [stdout] test test_tui_scroll_past_end_does_not_panic ... ok
[INFO] [stdout] test test_tui_render_data_methods_with_demo_data_no_panic ... ok
[INFO] [stdout] test test_tui_render_summary_zero_values_no_panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/malformed_json.rs (/opt/rustwide/target/debug/deps/malformed_json-5b996813aec2c146)
[INFO] [stdout] 
[INFO] [stdout] running 29 tests
[INFO] [stdout] test app_state_integrity_across_mixed_input ... ok
[INFO] [stdout] test app_stays_clean_on_all_malformed_input ... ok
[INFO] [stdout] test empty_json_object ... ok
[INFO] [stdout] test float_latency_ms_no_panic ... ok
[INFO] [stdout] test garbage_text ... ok
[INFO] [stdout] test duplicate_keys_no_panic ... ok
[INFO] [stdout] test json_bare_boolean ... ok
[INFO] [stdout] test json_bare_null ... ok
[INFO] [stdout] test json_bare_number ... ok
[INFO] [stdout] test json_bare_string ... ok
[INFO] [stdout] test missing_input_tokens_field ... ok
[INFO] [stdout] test missing_latency_ms_field ... ok
[INFO] [stdout] test missing_model_field ... ok
[INFO] [stdout] test missing_output_tokens_field ... ok
[INFO] [stdout] test negative_input_tokens_rejected ... ok
[INFO] [stdout] test negative_output_tokens_rejected ... ok
[INFO] [stdout] test only_unknown_field ... ok
[INFO] [stdout] test truncated_empty_string ... ok
[INFO] [stdout] test truncated_opening_brace_only ... ok
[INFO] [stdout] test trailing_comma_in_object ... ok
[INFO] [stdout] test truncated_whitespace_only ... ok
[INFO] [stdout] test wrong_type_input_tokens_string ... ok
[INFO] [stdout] test valid_entry_preserved_after_errors ... ok
[INFO] [stdout] test wrong_type_latency_ms_null ... ok
[INFO] [stdout] test wrong_type_model_number ... ok
[INFO] [stdout] test wrong_type_output_tokens_bool ... ok
[INFO] [stdout] test truncated_unclosed_string_value ... ok
[INFO] [stdout] test truncated_mid_key ... ok
[INFO] [stdout] test json_array_instead_of_object ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- json_array_instead_of_object stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'json_array_instead_of_object' (188) panicked at tests/malformed_json.rs:23:5:
[INFO] [stdout] expected error for input "[\"gpt-4o\", 100, 50, 20]", got Ok
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x60960b2ce79a - std[ec4e911328de40a6]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x60960b2ce79a - std[ec4e911328de40a6]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec4e911328de40a6]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x60960b2ce79a - std[ec4e911328de40a6]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x60960b2ce79a - <<std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a96a4c5c53f902a3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x60960b2e2f4a - <core[a96a4c5c53f902a3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x60960b2e2f4a - core[a96a4c5c53f902a3]::fmt::write
[INFO] [stdout]    6:     0x60960b2d3022 - std[ec4e911328de40a6]::io::default_write_fmt::<alloc[c960326de6de28e6]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x60960b2d3022 - <alloc[c960326de6de28e6]::vec::Vec<u8> as std[ec4e911328de40a6]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x60960b2ad83f - <std[ec4e911328de40a6]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x60960b2ad83f - std[ec4e911328de40a6]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x60960b2c6bd9 - std[ec4e911328de40a6]::panicking::default_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x60960b2211ec - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   12:     0x60960b2211ec - test[30c43f9fd66fea90]::test_main_with_exit_callback::<test[30c43f9fd66fea90]::test_main::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x60960b2c6d92 - <alloc[c960326de6de28e6]::boxed::Box<dyn for<'a, 'b> core[a96a4c5c53f902a3]::ops::function::Fn<(&'a std[ec4e911328de40a6]::panic::PanicHookInfo<'b>,), Output = ()> + core[a96a4c5c53f902a3]::marker::Sync + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::Fn<(&std[ec4e911328de40a6]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2254:9
[INFO] [stdout]   14:     0x60960b2c6d92 - std[ec4e911328de40a6]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x60960b2ad8f8 - std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x60960b2a5299 - std[ec4e911328de40a6]::sys::backtrace::__rust_end_short_backtrace::<std[ec4e911328de40a6]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x60960b2ae60d - __rustc[aa69f48705c57ca8]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x60960b2e370c - core[a96a4c5c53f902a3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x60960b213069 - malformed_json[dfd56bdf72d6fab5]::assert_parse_error
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/malformed_json.rs:23:5
[INFO] [stdout]   20:     0x60960b2135e2 - malformed_json[dfd56bdf72d6fab5]::json_array_instead_of_object
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/malformed_json.rs:80:5
[INFO] [stdout]   21:     0x60960b212d17 - malformed_json[dfd56bdf72d6fab5]::json_array_instead_of_object::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/malformed_json.rs:79:34
[INFO] [stdout]   22:     0x60960b214fe6 - <malformed_json[dfd56bdf72d6fab5]::json_array_instead_of_object::{closure#0} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x60960b2152cb - <fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x60960b2152cb - test[30c43f9fd66fea90]::__rust_begin_short_backtrace::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, fn() -> core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:663:18
[INFO] [stdout]   25:     0x60960b221cbb - test[30c43f9fd66fea90]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:74
[INFO] [stdout]   26:     0x60960b221cbb - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   27:     0x60960b221cbb - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   28:     0x60960b221cbb - std[ec4e911328de40a6]::panicking::catch_unwind::<core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>, core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x60960b221cbb - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<test[30c43f9fd66fea90]::run_test_in_process::{closure#0}>, core[a96a4c5c53f902a3]::result::Result<(), alloc[c960326de6de28e6]::string::String>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x60960b221cbb - test[30c43f9fd66fea90]::run_test_in_process
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:686:27
[INFO] [stdout]   31:     0x60960b221cbb - test[30c43f9fd66fea90]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:607:43
[INFO] [stdout]   32:     0x60960b21d3d4 - test[30c43f9fd66fea90]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/test/src/lib.rs:637:41
[INFO] [stdout]   33:     0x60960b21d3d4 - std[ec4e911328de40a6]::sys::backtrace::__rust_begin_short_backtrace::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x60960b2248c2 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   35:     0x60960b2248c2 - <core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   36:     0x60960b2248c2 - std[ec4e911328de40a6]::panicking::catch_unwind::do_call::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   37:     0x60960b2248c2 - std[ec4e911328de40a6]::panicking::catch_unwind::<(), core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x60960b2248c2 - std[ec4e911328de40a6]::panic::catch_unwind::<core[a96a4c5c53f902a3]::panic::unwind_safe::AssertUnwindSafe<std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x60960b2248c2 - std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked::<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   40:     0x60960b2248c2 - <std[ec4e911328de40a6]::thread::lifecycle::spawn_unchecked<test[30c43f9fd66fea90]::run_test::{closure#1}, ()>::{closure#1} as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x60960b2ce07f - <alloc[c960326de6de28e6]::boxed::Box<dyn core[a96a4c5c53f902a3]::ops::function::FnOnce<(), Output = ()> + core[a96a4c5c53f902a3]::marker::Send> as core[a96a4c5c53f902a3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/alloc/src/boxed.rs:2240:9
[INFO] [stdout]   42:     0x60960b2ce07f - <std[ec4e911328de40a6]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/0abe69e6c16114311cc2700e972492e64d69c28f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   43:     0x770c2104daa4 - <unknown>
[INFO] [stdout]   44:     0x770c210daa64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     json_array_instead_of_object
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 28 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test malformed_json`
[INFO] running `Command { std: "docker" "inspect" "aec11cecfa4c8982600cb38c105cbc98b12a991c1ffa965cb8e70b6863a57da9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aec11cecfa4c8982600cb38c105cbc98b12a991c1ffa965cb8e70b6863a57da9", kill_on_drop: false }`
[INFO] [stdout] aec11cecfa4c8982600cb38c105cbc98b12a991c1ffa965cb8e70b6863a57da9
